using System.ComponentModel.DataAnnotations;
using System.Data.Entity.ModelConfiguration;

namespace RRHH.Models.Mapping
{
    public class CATALOGOMap : EntityTypeConfiguration<CATALOGO>
    {
        public CATALOGOMap()
        {
            // Primary Key
            this.HasKey(t => t.IDAUTO);

            // Properties
            this.Property(t => t.IDCATALOGO)
                .HasMaxLength(5);

            this.Property(t => t.NOMBRE)
                .HasMaxLength(255);

            this.Property(t => t.ESTADO)
                .IsFixedLength()
                .HasMaxLength(1);

            this.Property(t => t.IDPAIS)
                .HasMaxLength(4);

            this.Property(t => t.ORDEN)
                .HasMaxLength(38);

            // Table & Column Mappings
            this.ToTable("CATALOGO");
            this.Property(t => t.IDAUTO).HasColumnName("IDAUTO");
            this.Property(t => t.IDCATALOGO).HasColumnName("IDCATALOGO");
            this.Property(t => t.NOMBRE).HasColumnName("NOMBRE");
            this.Property(t => t.IDDOMINIO).HasColumnName("IDDOMINIO");
            this.Property(t => t.ESTADO).HasColumnName("ESTADO");
            this.Property(t => t.IDPAIS).HasColumnName("IDPAIS");
            this.Property(t => t.FECHACREACION).HasColumnName("FECHACREACION");
            this.Property(t => t.FECHAMODIFICACION).HasColumnName("FECHAMODIFICACION");
            this.Property(t => t.ORDEN).HasColumnName("ORDEN");
        }
    }
}
